Шаг 122 - Изучаем справочник – как заставить выбирать программно.

Производя поиск по наименованию может получиться такая ситуация, что по имени мы не найдем. Конечно, покажем предупреждение. Но лучше в данный момент заставить пользователя все таки выбрать запись в справочнике. Для этого нам нужно программно показать окно справочника. И это, то же можно.

Выбрать
Выбрать элемент справочника в диалоге.

Синтаксис:
Выбрать(<Подсказка>, <Форма Списка>)
Англоязычный синоним:
Choose

Параметры:
<Подсказка> Текст заголовка окна диалога выбора. Может использоваться в качестве подсказки конечному пользователю.
<ФормаСписка> Строковое выражение идентификатора той формы списка справочника (как он объявлен в конфигураторе), которая должна использоваться для выбора. Если это значение пустое, то используется форма списка по умолчанию.

Возвращаемое значение:
Числовое значение: 1 — если элемент выбран; 0 — если не выбран.

Описание:
Метод Выбрать вызывает диалоговое окно для выбора элемента и затем позиционирует справочник на выбранном элементе. Данный метод может использоваться только для объектов, созданных функцией СоздатьОбъект.

Теперь наш код выглядит так.

Процедура Сформировать()    

	Спр =СоздатьОбъект("Справочник.Контрагенты");
	Спр.НайтиПоНаименованию("Авто - Карьер", 1); 
    	Если Спр.Выбран() > 0 Тогда  
		Предупреждение(Спр.Код);
	Иначе     
		Спр.Выбрать(" Авто - Карьер","");
	КонецЕсли;
КонецПроцедуры

Обратите внимание, что я добавил пробелов. Теперь наименование не будет найдено, но зато тут же у нас, его просят, что бы мы поискали в справочнике.

122_1.gif (4618 b)

Таким способом мы можем ликвидировать последствия ошибок ввода, когда одно и то же имя встречается в справочнике по несколько раз.

Hosted by uCoz